package futbol.tacticas.concursantes.Kavra;

import futbol.tacticas.Comando;
import futbol.tacticas.ComandoGolpearBola;
import futbol.tacticas.ComandoIrA;
import futbol.tacticas.ComandoPase;
import futbol.tacticas.ComandoTiroAPuerta;
import futbol.tacticas.SituacionJugadores;
import futbol.tacticas.concursantes.Tactica;
import futbol.tacticas.*;
import java.awt.Color;
import java.awt.Point;
import java.util.Vector;

/**
 *
 * @author Administrador
 */
public class Kavra implements Tactica{
    
    private int nValores[][]={
        {-152,0,4}, //portero
        {-120,30,7},
        {-120,-30,7},
        {0,80,7}, 
        {0,0,7},
        {0,-80,7},
        {60,60,7},
        {60,-60,7},
        {125,65,7},
        {80,0,6},
        {125,-65,7}
    };

    public String getNombre(){
        return "KavraFC";
    }
    
    public Color getColor1(){
        return Color.yellow;
    }
    
    public Color getColor2(){
        return Color.red;
    }
    
    public Color getColorNumero(){
        return Color.white;
    }
    
    public int getFuerza(int n){
        return nValores[n][2];
    }
    public int getXInicial(int n){
        return nValores[n][0];
    }
    
    public int getYInicial(int n){
        return nValores[n][1];
    }
    
    public Vector<Comando> getComandos(SituacionJugadores sj){
        Vector<Comando> comandos=new Vector();
        
        int nJug=sj.getMasCercanoDeBola();
        Point bola=sj.getBola();
        
        for (int n=0;n<11;n++)
            comandos.add(new ComandoIrA(n, nValores[n][0], nValores[n][1]));
        
        
        if (sj.estoyMasCercaDeBola()&&(nJug!=0)) {    
            comandos.add(new ComandoIrA(nJug, bola.getX(), bola.getY()));
        }
        
        if ((bola.getX()<-130)&&(bola.getY()<40)&&(bola.getY()>-40)) {
            comandos.add(new ComandoIrA(0, bola.getX(), bola.getY()));
        }
        
        if ((bola.getX()<-80)&&(bola.getY()>=-15)) {
            comandos.add(new ComandoIrA(1, bola.getX(), bola.getY()));
        }
        if ((bola.getX()<-80)&&(bola.getY()<=15)) {
            comandos.add(new ComandoIrA(2, bola.getX(), bola.getY()));
        }
        
        if ((bola.getX()>=-100)&&(bola.getX()<=80)&&(bola.getY()>=0)) {
            comandos.add(new ComandoIrA(3, bola.getX(), bola.getY()));
        }
        if ((bola.getX()>=-100)&&(bola.getX()<=80)) {
            comandos.add(new ComandoIrA(4, bola.getX(), bola.getY()));
        }
        if ((bola.getX()>=-100)&&(bola.getX()<=80)&&(bola.getY()<=0)) {
            comandos.add(new ComandoIrA(5, bola.getX(), bola.getY()));
        }
        
        if ((bola.getX()>-35)&&(bola.getX()<110)) {
            comandos.add(new ComandoIrA(6, bola.getX(), bola.getY()));
        }
		  
	if ((bola.getX()>-35)&&(bola.getX()<110)) {
            comandos.add(new ComandoIrA(7, bola.getX(), bola.getY()));
        }
		
        for (int n=8;n<11;n++) {
            if (bola.getX()>50) {
                comandos.add(new ComandoIrA(n, bola.getX(), bola.getY()));
            }
        }
        
        for (int n=0;n<11;n++) {
            comandos.add(new ComandoTiroAPuerta(n, 1));
        }

        return comandos;
    }
} 